home *** CD-ROM | disk | FTP | other *** search
/ Workbench Design / WB Collection.iso / workbench werkzeuge / guis für programme / devicelock / guide / english / devicelock.guide (.txt) next >
Amigaguide Document  |  1996-04-07  |  22KB  |  513 lines

  1. @DATABASE
  2. @$VER: DeviceLock.guide 1.2 (28.2.94)
  3. @AUTHOR Thomas Wagner
  4. @NODE MAIN "Contents"
  5.                   Manual: DeviceLock Version 1.2
  6.                 ==================================
  7. @{U}What is DeviceLock ?@{UU}
  8. Briefly: an Intuition-Interface with HotKeySupport for the
  9.          CLI-Program LOCK.
  10. DeviceLock allows the user to deny write access to certain drives. It
  11. is controlable by window and hotkeys. Needs OS 2.4 or higher. It
  12. supports some functions of 2.1 and 3.x. Details see @{" Features " LINK Features}.
  13. @{B} Don't blame me for the translation, do it better!. @{UB}
  14. @{U}Contents@{UU}
  15. You should at least read the chapters marked with !.
  16.      !  @{"   Copyright, Address  " LINK Copyright}
  17.      !  @{"   Warranty            " LINK Haftung  }
  18.         @{"   About DeviceLock    " LINK Prog     }
  19.         @{"   Changes             " LINK Changes  }   
  20.         @{"   Features            " LINK Features }
  21.         @{"   Arguments           " LINK Argumente}
  22.      !  @{"   Prefs               " LINK Prefs    }
  23.         @{"   Operate & more      " LINK Bedienung}
  24.         @{"   Requester           " LINK Requester} 
  25.         @{"   Credits             " LINK Credits  }
  26.  --->   @{"   Quickstart          " LINK Quick    }
  27. @ENDNODE
  28. @NODE Copyright "Copyright and Address"
  29. @{U}Copyright@{UU}
  30. I try to translate the german version without errors.
  31. Nevertheless only the german version is valid!
  32. See @{" german docs " LINK /deutsch/DeviceLock.guide/Copyright}
  33. DeviceLock, 
  34.  1994 by Thomas Wagner, Pyrbaum [tom].
  35. You may publish the paket only on disks or other media which
  36. are free distributable or which are acessable without costs
  37. (PD disks, mailboxes). It is hereby explicitly granted to publish
  38. it on AMOK, FISH and AminetCD.
  39. It is strictly forbidden to use the paket, sources or parts of the
  40. paket or the sources for commercial purposes.
  41. It is allowed to change the program for personal purposes, but it is
  42. not allowed to publish the changed program or the sources without
  43. the knowledge of the author. This should only prevent the formation
  44. of many only slight different programs. I will further develop the
  45. program (it's only the question how fast!)
  46. Send bug reports and improvements to the author (address below).
  47. Catalogs in other languages are welcome, too. If you want me to
  48. answer, please include SASE or use E-Mail.
  49. The basic paket includes:
  50. - DeviceLock
  51. - deutsch/DeviceLock.guide
  52. - english/DeviceLock.guide
  53. - DeviceLock.prefs
  54. - Catalogs/deutsch/DeviceLock.catalog
  55. - DeviceLock.cd
  56. This basic paket must be included completely to all publications.
  57. All other parts (Oberon source, ...) are optional.
  58. @B{B}The copyright of imported modules is not affected by these
  59. copyright notices, and they are to be respected!@{UB}
  60. @{U}Address@{UU}
  61.       Thomas Wagner
  62.       M
  63. hlenweg 7
  64.       90602 Pyrbaum
  65.       GERMANY
  66. @{U}E-Mail@{UU}
  67.       tom@oberon.nbg.sub.org
  68. @ENDNODE
  69. @NODE Haftung Warranty
  70. @{U}Warranty@{UU}
  71. I try to translate the german version without any mistakes. Nevertheless
  72. only the german version is valid! See @{" german docs " LINK /deutsch/DeviceLock.guide/Haftung}
  73. The author grants no warranty for any damage caused direct or indirect by
  74. the program. There is no guarantee to the functionality or efficiency of the
  75. program.
  76. @{B}There's no warranty of any kind@{UB}
  77. (This may sound strange, but I don't ask any money for the
  78. program, so why should I held responsible for any damage?)
  79. There might be programs that are very picky about not getting write access.
  80. Please test this with your often used programs. This should also be done
  81. with the following situation: drive is locked, requester (... is locked)
  82. appears, unlock, klick Retry on requester. It didn't have any problems up
  83. to now, but keep on the save side.
  84. @ENDNODE
  85. @NODE Prog "About DeviceLock"
  86. @{U}About DeviceLock@{UU}
  87. For the moment the program has the following status:
  88. "It is (more than) sufficient for me"
  89. @ENDNODE
  90. @NODE Changes "Changes"
  91. New in version 1.1:
  92.  + new options (preference file): KeyNorm, NormAllBeep
  93.  format change for option Lock; Y und N OBSOLETE (but they still work)
  94. Changes in 1.2:
  95.  - bad bug: because of changing to new Oberon interfaces in 1.1 the stack
  96.    went a a bit small (who has a 2 GB stack?). This also causes DeviceLock
  97.    to fail when trying to print an error message ...
  98.    Thanks to Thomas Kobler for reporting the bug.
  99.  If you started a new DeviceLock the earlier versions of DeviceLock 
  100.    only opened the window of the old program and the new terminated at
  101.    once. Now the old one terminates and the new one will procede normal.
  102.    This makes the procedure of finding your right prefs easier.
  103.    ATTENTION: When changing the passwort you should quit DeviceLock normal
  104.    (i.e. menu). If you simple restart DeviceLock, the old one will quit
  105.    immediately without unlocking the drives. That may cause some trouble!
  106. @ENDNODE
  107. @NODE Features Features
  108. * DeviceLock is a commodity
  109. * font adaptive
  110. * supports locale (OS 2.1 or higher)
  111. * adapts size of checkboxes to font-height (only 3.0 or higher)
  112. * supports SiyOnlyZoom (only 3.0 or higher)
  113. * uses reqtools.library (
  114.  by Nico Fran
  115. ois) if V38 or higher is available
  116. * controlable by hotkeys
  117. @ENDNODE
  118. @NODE Argumente Arguments
  119. @{U}How to start DeviceLock@{UU}
  120. You can start DeviceLock from CLI or from Workbench. If you like the
  121. program: Copy DeviceLock into your WBstartup. The flag DONOTWAIT is already
  122. set. The proper place for the prefs is ENVARC:.
  123. The template is:
  124.   SETTINGS/K,PS=PUBSCREEN/K,NOWARNINGS/S,TOOLPRI/N/K,
  125.   CX_PRIORITY/N/K,CX_POPUP/K,CX_POPKEY/K
  126. These are valid for CLI and as tooltypes for workbench start.
  127. @{B}SETTINGS/K@{UB} 
  128.     Load these settings instead of normal Prefs-File. You can
  129.     use and name.
  130. @{B}PS=PUBSCREEN/K@{UB} 
  131.     Pubscreen on which to open window.
  132. @{B}NOWARNIGS/S@{UB}
  133.      Suppress warnings.
  134. @{B}TOOLPRI/N/K@{UB} (
  135.     Set priority for DeviceLock. DEFAULT 1.
  136. @{B}CX_PRIORITY/N/K@{UB}
  137.     HotKey priority. If two programs want to get the same hotkey the
  138.     program with the higher priority get it first (and in most cases as the
  139.     only one).
  140. @{B}CX_POPUP/S@{UB} 
  141.     Open window on startup?
  142. @{B}CX_POPKEY/K@{UB} 
  143.     Hotkey to open/close window.
  144. @{B}CLI@{UB} 
  145.     WB opens a requester to ask for parameters for CLI-Start.
  146.     Attention: If you specify this option all other options will be 
  147.                ignored.
  148. @{B}DONOTWAIT@{UB} 
  149.     You must specify this, if you want to place DeviceLock in your
  150.     WBstartup drawer. In the distributed DeviceLock.info already set.
  151.  DEFAULT: DeviceLock.prefs;
  152.   search path:  - current drawer
  153.                 - ENV:
  154.                 - drawer of program
  155.  Theses options are usually defined in DeviceLock.prefs.
  156.   CLI/WB arguments override arguments specified in DeviceLock.prefs.
  157.  Theses options are used and interpreted by the Workbench.
  158. @ENDNODE
  159. @NODE Prefs "DeviceLock.prefs"
  160. @{U}DeviceLock.prefs@{UU}
  161. @{U}IMPORTANT:@{UU}
  162. You must adapt DeviceLock.prefs to your own needs. Nevertheless it should
  163. work fine under standard 2.x Workbench (and should work with small changes on
  164. WB 3.0: change WB_2.x into the device name of your system device).
  165. You can add comments to the Prefs in three ways:
  166. - SPACE in the first column;
  167. - ";" everything after that is a comment.
  168. - emtpy lines count as comments, too
  169. The capitalization is not important for the comments and the version string.
  170. @{U}Structure:@{UU}
  171. In the @{B} first line@{UB} must be a valid version string for DeviceLock.Prefs
  172. Version 1 (Commodore norm; the date is not important for DeviceLock; you can
  173. change the revision as you like). The start column of the version string is
  174. not important but the line must be marked as comment (see example).
  175. Example:
  176. ;$VER DeviceLock.prefs 1.45 (23.3.90)
  177. Then you can add the options in (nearly) any order. The exceptions are
  178. DeviceName, PrintName, Passkey, Lock, HotKey. The form a special group.
  179. The structure is the same for all options:
  180. NameOfOption=Specification
  181. The NameOfOption must start in the first column, then add the = (w/o space)
  182. then the Specification (w/o space, too). Everything between the = and the
  183. end of line or a comment (;) is considered Specification. But the
  184. Specification is right justified, i.e. the right spaces are removed.
  185. If you don't specify an option the default value is used (if possible).
  186. For BOOLEAN values you can use Yes (short Y) or No (short N).
  187. Now the "normal" options. If you specify one of these options multiple times
  188. only the last one is taken.
  189. @{B}LeftEdge@{UB}
  190.   Nothing to say
  191.   Default = 0
  192. @{B}TopEdge@{UB}
  193.   Nothing to say
  194.   Default = 0
  195. @{B}LeftEdgeZoomed@{UB}
  196.   Left edge for zoomed window
  197.   Default = 0
  198. @{B}TopEdgeZoomed@{UB}
  199.   Top edge for zoomed window
  200.   Default = 0
  201. @{B}OpenWindow@{UB}
  202.   Open window at startup? Equals the CLI/WB argument CX_Popup. CX_Popup
  203.   overwrites OpenWindow!
  204.   Default=Yes  
  205. @{B}OpenZoomed@{UB}
  206.   Open window in zoomed state. It is possible to set OpenWindow=N and
  207.   OpenZoomed=Y. In this case the window will opened in zoomed state when
  208.   activated by hotkey.
  209.   Default=No
  210. @{B}CheckTime@{UB}
  211.   DeviceLock checks after a period whether the state of the drives has
  212.   changed or not and refreshes the gadgets. This value sets the period in
  213.   seconds.
  214.   Default=3
  215. @{B}KeyLock@{UB} 
  216.   If you press the hotkey specified by this string all drives will be
  217.   locked.
  218.   no Default, i.e. not specified, no hotkey
  219. @{B}KeyNorm@{UB} 
  220.   If you press the hotkey specified by this string all drives will be
  221.   set to "normal" state. Normal state is defined by the option "Lock".
  222.   no Default, i.e. not specified, no hotkey
  223. @{B}KeyWindow@{UB} 
  224.   If you press the hotkey specified by this string the window will be
  225.   opened/closes. If you don't specifiy this you can open the window only
  226.   with the exchange program. Equals the CLI/WB argument CX_Popkey. CX_Popkey
  227.   overwrites KeyWindow!
  228.   no Default, i.e. not specified, no hotkey
  229. @{B}KeyFront@{UB} 
  230.   If you press the hotkey specified by this string the window tries to open
  231.   on the frontmost screen. This is not possible if
  232.     1. the first screen is no pubscreen
  233.     2. it is in private mode
  234.   If this fail, thew window will be opened on the default pubscreen.
  235.   no Default, i.e. not specified, no hotkey
  236. @{B}PubScreen@{UB}
  237.   Name of the pubscreen on which to open DeviceLock on startup. Same
  238.   restrictions as KeyFront.
  239.   kein Default d.h. nicht angegeben = wird auf DefaultPubScreen ge
  240. ffnet
  241. @{B}LockString@{UB}
  242.   This string is used to construct the executable string to LOCK the drive.
  243.   There must be two %s in this string. So "lock %s on %s" is expanded to
  244.   for example "lock Work: on ThisIsMyPassKey".
  245.   Default = "lock %s on %s" (there should be no need to change this, but
  246.                              who knows ...)
  247. @{B}UnlockString@{UB}
  248.   This string is used to construct the executable string to UNLOCK the
  249.   drive. There must be two %s in this string. So "lock %s of %s" is
  250.   expanded to for example "lock Work: on ThisIsMyPassKey".
  251.   Default = "lock %s off %s" (there should be no need to change this, but
  252.                               who knows ...)
  253. @{B}SizeOnlyZoom@{UB}
  254.   If this flag is set to Yes, then pressing the ZOOM gadget only performs
  255.   a size only zoom, i.e. the left and top edge of the window don't change
  256.   (if possible). This option is effective only with OS 3.0 or higher.
  257.   Default=Yes, if OS 3.0 or higher
  258.           No,  else
  259. @{B}UnlockBeep@{UB}
  260.   To prevent unlocking one drive accidently by hotkey, you can specify with
  261.   this option to perform a DisplayBeep whenever an unlock hotkey is pressed.
  262.   Default=Yes
  263. @{B}LockAllBeep@{UB}
  264.   If enabled, every use of the hotkey which locks all drives performs a
  265.   DisplayBeep. Attention: If you enable UnlockBeep and LockAllBeep you can't
  266.   distinguish between LockAll and Unlock!
  267.   Default=No
  268. @{B}NormAllBeep@{UB}
  269.   If enabled, every use of the hotkey which normalizes all drives performs a
  270.   DisplayBeep.
  271.   Default=No
  272. The following options are known and are processed, but they have no function.
  273. Therefor they are not explained any further.
  274. NotifyDL
  275. RemPosition
  276. Now the special options:
  277. @{B}Devicename@{UB}
  278.   Allocates memory for the drive and set default values for the other
  279.   special options. This option must be specified at least one time
  280.   (it is the purpose of this program to "handle" drives). You must specify
  281.   this option before the other spcial options, to specify which drive should
  282.   be changed. If you specify one of the other special options before the
  283.   will be ignored.
  284.   You can specify this option multiple times without overwriting older
  285.   specifications. This value replaces the first %s in the (Un)Lock string.
  286.   NO DEFAULT POSSIBLE
  287. No you can change the default values of the new generated drive:
  288. @{B}PrintName@{UB}
  289.   The name printed besides the checkbox gadget.
  290.   Default=Devicename
  291. @{B}PassKey@{UB}
  292.   The password to lock the drive. Replaces the second %s in the (Un)Lock
  293.   string.
  294.   no default
  295. @{B}Lock@{UB}
  296.   Defines the normal state of the drive. The drive is set to this state
  297.   after the start or after the hotkey KeyNorm.
  298.   Possible values:
  299.     + locked
  300.     - unlocked
  301.     * keep actual state
  302.   Default=+
  303. @{B}HotKey@{UB} 
  304.   If you press the hotkey specified by this string, this drive will be
  305.   unlocked.
  306.   no Default, i.e. not specified, no hotkey
  307.  What descriptions you can use depends on the version of the operating
  308.   system. You can find details in the documentation to your computer.
  309.   Typical examples are in DeviceLock.Prefs.
  310. @ENDNODE
  311. @NODE Bedienung "Operate & more"
  312. @{U}Usage:@{UU}
  313. Here's a short help to use the program:
  314. Note: All texts are described in english. If you use a catalog
  315.       they will appear in an other language.
  316.     @{"  Menu      " LINK Menu}
  317.     @{"  Gadgets   " LINK Gadgets}
  318.     @{"  Other     " LINK Div}
  319. @ENDNODE
  320. @NODE Menu Menu
  321. @{U}The menu:@{UU}
  322. @{B}Project:@{UB}
  323. LOCK                   LOCK's all drives
  324. UNLOCK                 UNLOCK's all drives
  325. Version, Copyright ... Open gadget with version and copyright notice
  326. Hide                   Closes window
  327.                        ATTENTION: does not quit the program
  328. Quit ...               Quit after confirmation. If all drives are unlocked
  329.                        there wil be no confirmation requester!
  330.                        This requester can also questioned to not
  331.                        touch the lock-state of the drives (be careful!)
  332. @ENDNODE
  333. @NODE Gadgets Gadgets
  334. @{U}Gadgets:@{UU}
  335. CLOSE: Closes the window
  336.        ATTENTION: does not quit the program
  337. LOCK: LOCK's all drives
  338. With the checkboxes you can (UN)LOCK a single drive. A checkmark
  339. indicates that this drive is locked.
  340. If a checkbox is ghosted, this drives is not accessable.
  341. @ENDNODE
  342. @NODE Div Other
  343. @{U}Other:@{UU}
  344. * If the window is zoomed, the width is adapted to the number
  345.   of the drives (there are max. 20 drives shown in the title).
  346.   The title shows the status in the order of the drives:
  347.     + write enabled  (UNLOCK)
  348.     - write disabled (LOCK)
  349.  not accessable
  350. * Pressing the left mousebutton in the window, but not on a gadget
  351.   or the title, alldroives will be checked immediately.
  352. * If the window is activated there is NO automatic check of the
  353.   drives, and no refresh of the gadgets and the title
  354.   (Exceptions: LOCKALL, Menu-select and left mousebutton).
  355.   This is because there are problems with refreshing while
  356.   pressing a gadget.
  357. * Quitting DeviceLock with Exchange results in unlocking all drives
  358.   (no confirmation requester).
  359. * All hotkeys are functional even when the window is closed ...
  360. * @{B}Maximum's:@{UB}
  361.   - Length of the drivename (for gadgets) : 20 characters
  362.   - Length of the DOS-drivenamne          : 20 characters
  363.   - Length of the password                : 30 characters
  364.   - Length of the pubscreen name          : 60 characters
  365.   - Length of the string with the two %s  : 30 characters
  366.   - L
  367. nge der Strings mit den zwei %s     : 30 characters each
  368.   - Number of drives                      : MAX(INTEGER)
  369.   If you exceed these values there will be a warning and the 
  370.   string will be truncated.
  371.   @{B}ATTENTION: You need Oberon Interfaces for OS 3.x in
  372.              order to compile these program!@{UB}
  373. @{U}Notes@{UU}
  374. * If you start a new DeviceLock while another is still active, the
  375.   old one immediatley quits (without unlocking the drives). 
  376. * It was intention not to localise the string "All rights reserved."
  377.   in the screentitle.
  378. * I added some features to ensure fully functionality for removable
  379.   medias (disk drives), but the program was designed for not removable
  380.   medias (harddrives).
  381. * The program can prevent some viruses from writing to the drive (AS LONG
  382.   AS IT IS LOCKED), @{B}but this is not the purpose of the program and
  383.   so doesn't fulfill this task very well!@{UB}
  384. @{U}Hints@{UU}
  385. * Make lock (CLI command) resident. Speeds up (un)locking.
  386. * Delete options set identical to defaults. Makes the file shorter
  387.   and speeds up the "compiling" time.
  388. * Delete comments and spaces after options. Makes the file shorter
  389.   and speeds up the "compiling" time.
  390. @ENDNODE
  391. @NODE Requester "Warnings, Errors"
  392. @{U}Warnings, Errors@{UU}
  393.     @{"   Warnings  " LINK "Warnungen"}
  394.     @{"   Errors    " LINK "Fehler"}
  395. @ENDNODE
  396. @NODE Warnungen "Warnings"
  397. @{U}Warnings:@{UU}
  398. Common: Warnings don't quit the program. There might be a requester
  399.         to quit the program.
  400. You can choose between these alternatives to answer the following
  401. warnigs:
  402.            @{B}Proceed@{UB}
  403.               Proceed with the program.
  404.            @{B}No further warnings@{UB}
  405.               Proceed with the program and supress further warnings.
  406.            @{B}Quit@{UB}
  407.               Quit the program.
  408. @{B}Cannot add '<HotKey>'@{UB}
  409.      For some reason I can't add <HotKey>. Perhaps memory allocation failed.
  410. @{B}'<HotKey>' is not a valid hotkey@{UB}
  411.      The <HotKey> description is invalid. Maybe wrong spelled.
  412. @{B}Original string was too long, stripped down to '<String>'@{UB}
  413.      One of the length limited strings (@{" Maximum's " LINK Div 25}) is to long
  414.      and was stripped to <String>.
  415. @{B}Converting '<...>' into number failed. Treated as 0.@{UB}
  416.      <...> is no number or is too big. I instead use 0 for the number.
  417. @{B}I cannot interpret BOOLEAN value '<...>'. Treated as FALSE.@{UB}
  418.      Only Y and N (and of course y and n) are valid. I treated the value
  419.      as FALSE (No).
  420. @{B}'<...>' invalid format. These line is ignored.@{UB}
  421.      '='is missing or there is nothing after the '='.
  422. @{B}Unknown option '<...>'.@{UB}
  423.      The line is build correct, but <...> is an unknown option.
  424. The following warnings (called "problems") can only be noticed. There's
  425. no way to supress them:
  426. @{B}Can't lock '<Device>'@{UB}
  427.      LOCK ON was executed, but the drive is not locked now. One cause is
  428.      drives not supporting the LOCK-Packet (like Ram-Disk).
  429. @{B}Can't unlock '<Device>'@{UB}
  430.      LOCK ON was executed, but the drive is still locked. One cause is
  431.      that the drives was previous locked with another password.
  432. @ENDNODE
  433. @NODE Fehler "Errors"
  434. @{U}Errors:@{UU}
  435. After an error occured, the program quits. You can only notice the
  436. error requesters.
  437. @{B}<PROCEDURE> failed@{UB}
  438.      For some reason this (internal) PROCEDURE couldn't be executed.
  439.      Probably insufficient memory. In extreme cases, even this requester
  440.      myay not pop up!
  441. @{B}Can't execute 
  442. lock ... on
  443. @{UB}
  444.      What should I say more!
  445. @{B}Can't execute 
  446. lock ... off
  447. @{UB}
  448.      What should I say more!
  449. @{B}Specified settings are no 
  450. DeviceLock.Prefs
  451. .@{UB}
  452.      You specified a preference file which is NO real DeviceLock
  453.      preference file. Perhaps you forgot the version line or it is
  454.      in a wrong position.
  455. @{B}I can't find/read given settings@{UB}
  456.      A specified preference file doesn't exist or is read protected.
  457. @{B}No valid 
  458. DeviceLock.Prefs
  459.  in path.@{UB}
  460.      There was a 
  461. DeviceLock.Prefs
  462. , but it is no valid preference file.
  463.      Perhaps you forgot the version line or it is in a wrong position.
  464. @{B}I can't find 
  465. DeviceLock.Prefs
  466.  in path.@{UB}
  467.      In the search path (cureent dir, ENV:, PROGDIR:) there's no preference
  468.      file.
  469. @{B}Some Problems while reading ToolTypes@{UB}
  470.      For some reason the module WBReadArgs couldn't interpret the tooltypes.
  471.      Perhaps you specified a string instead of an integer number.
  472. @{B}No drive specifications in settings@{UB}
  473.      There is a valid preference file, but there are no drive specifications.
  474. @ENDNODE
  475. @NODE Credits Credits
  476. @{U}Credits to (alphabetical order):@{UU}
  477. @{B}Freddy@{UB}
  478. @{B}hartmut@{UB}
  479. and of course to following persons (order by rolling dices ;-) )
  480. +---------+-------------------+------------------------------------
  481. | Program | catcompMO         | @{B}Oliver Knorr [olk]@{UB}
  482. | Module  | HotKey.mod        | @{B}Thomas Igracki@{UB}
  483. | Module  | PrintF.mod        | @{B}Volker Rudolf@{UB}
  484. | Module  | MoreIntuition.mod | @{B}Michael Hohmann [mick]@{UB}
  485. | Module  | ReqTools.mod      | @{B}Kay Bolay [kay]@{UB}
  486. | Library | reqtools.library  | @{B}Nico Fran
  487. ois@{UB}
  488. | Module  | WBReadArgs.mod    | @{B}hartmut Goebel [hG]@{UB}
  489. +---------+-------------------+------------------------------------
  490. @ENDNODE
  491. @NODE Quick Quickstart
  492. @{U} Quickstart: @{UU}
  493. @{U}                                                                          @{UU}
  494. For Quickstarters, too:
  495. DeviceLock, 
  496.  1994 by Thomas Wagner, Pyrbaum [tom].
  497. for more see @{" Copyright " LINK Copyright}, exact see @{" german docs " LINK /deutsch/DeviceLock.guide/Copyright}.
  498. The author grants no warranty for any damage caused direct or indirect by
  499. the program. There is no guarantee to the functionality or efficiency of the
  500. program.
  501. @{B}There's no warranty of any kind@{UB}
  502. for more see @{" Warranty " LINK Haftung}, exact see @{" german docs " LINK /deutsch/DeviceLock.guide/Haftung}.
  503. @{U}                                                                          @{UU}
  504. You can try DeviceLock:
  505. Copy DeviceLock (with DeviceLock.info) to Wbstartup and DeviceLock.Prefs
  506. to ENVARC: and ENV:
  507. Perhaps you must adapt "DeviceLock.Prefs" to your system. Restart DeviceLock
  508. after changing the Preferences to load the new one.
  509. Important for testing: Unlock all drives when exiting the program or the
  510. drives may stay write disabled!
  511. Thats the reason why the passwords in the demo prefs are commented out.
  512. @ENDNODE
  513.